<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui"
                template="../templates/principal.xhtml">

    <ui:define name="head">
        <script type="text/javascript">
            jQuery(function($) {
                $("input.data:text").mask("99/99/9999");
                $("input.processo:text").mask("9999-9.999.999-9");
            });


        </script>

        <style type="text/css">
            .ui-picklist.p1 .ui-picklist-list {
                width: 500px !important;
                text-align:left !important;
            }

            .ui-picklist.p1 .ui-picklist-caption {
                text-align:left !important;
                padding:4px 50px 4px 50px;
                border-bottom:0px none;
            }

        </style>
    </ui:define>

    <ui:define name="content" id="content">        
        <h:form id="frmAcompanhamentoProcesso" prependId="false" target="_blank">
            <p:growl id="messages" life="5000" />

            <p:panel id="panel" header="Bem Vindo ao Relatório de Acompanhamento de Processos">
                <p:dataTable id="multiAcompanhamentos" var="acompanhamento" value="#{viewAcompanhamentoProcesso.tempAcompanhamentoLazy}" paginator="true" rows="16"
                             resizableColumns="true" rowIndexVar="rowId" filterEvent="enter" lazy="true" paginatorPosition="top" emptyMessage="Nenhum Registro Retornado ...">

                    <p:column style="width:2%">
                        <p:rowToggler />
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.nomFantasia}">
                        <f:facet name="header">  
                            <h:outputText value="Cliente" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.nomFantasia}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.dscEmpreendimento}">
                        <f:facet name="header">  
                            <h:outputText value="Empreendimento" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.dscEmpreendimento}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.numProcesso}" filterStyleClass="processo">
                        <f:facet name="header">  
                            <h:outputText value="Processo" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.numProcesso}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.dscLote}">
                        <f:facet name="header">  
                            <h:outputText value="Assunto" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.dscLote}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.dscIdLote}">
                        <f:facet name="header">  
                            <h:outputText value="Lote" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.dscIdLote}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.dscOrgao}">
                        <f:facet name="header">  
                            <h:outputText value="Unidade" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.dscOrgao}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.locDatDesde}" filterStyleClass="data">
                        <f:facet name="header">  
                            <h:outputText value="Desde" />  
                        </f:facet>
                        <h:outputText value="#{acompanhamento.locDatDesde}">
                            <f:convertDateTime type="date" dateStyle="short" pattern="dd/MM/yyyy"/>
                        </h:outputText>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.sitDescricao}">
                        <f:facet name="header">  
                            <h:outputText value="Situação" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.sitDescricao}" />
                        </div>
                    </p:column>
                    
                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.locTransito}">
                        <f:facet name="header">  
                            <h:outputText value="Transito" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.locTransito}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.locFunciionario}">
                        <f:facet name="header">  
                            <h:outputText value="Funcionário" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.locFunciionario}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.nomTecnico}">
                        <f:facet name="header">  
                            <h:outputText value="Nome do Técnico" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.nomTecnico}" />
                        </div>
                    </p:column>

                    <p:column style="text-align: center; overflow: hidden;" filterBy="#{acompanhamento.dptResponsavel}">
                        <f:facet name="header">  
                            <h:outputText value="Depto.Responsavel" />  
                        </f:facet>
                        <div style="text-align: left;">
                            <h:outputText value="#{acompanhamento.dptResponsavel}" />
                        </div>
                    </p:column>
                    <p:rowExpansion>
                        <h:panelGrid id="display" columns="1" cellpadding="4" style="width:100%; background-color: #FFFFCC;">  

                            <f:facet name="header">  
                                <h:outputText value="AÇÕES"/> 
                            </f:facet>  

                            <p:inputTextarea id="editorObs" widgetVar="editorObs" readonly="true" autoResize="false" value="#{acompanhamento.dscObs}" style="width: 100%; height: 200px;"/>
                        </h:panelGrid> 
                    </p:rowExpansion>
                </p:dataTable>
                
                <p:fieldset legend="Escolha o Agrupamento para o Relatório" collapsed="true" toggleable="true">
                    <p:pickList id="pickList" value="#{viewAcompanhamentoProcesso.camposRelatorioPicks}" var="campos" converter="camposRelatorioConverter"
                                itemLabel="#{campos}" itemValue="#{campos.id}"  styleClass="p1" 
                                showSourceControls="true" showTargetControls="true" showCheckbox="true"
                                showSourceFilter="true" showTargetFilter="true" filterMatchMode="contains">

                        <f:facet name="sourceCaption">Origem</f:facet>
                        <f:facet name="targetCaption">Destino</f:facet>

                        <p:column style="width:75%;">
                            #{campos.label.trim()}
                        </p:column>
                        <p:ajax event="transfer" update=":frmAcompanhamentoProcesso:multiAcompanhamentos" listener="#{viewAcompanhamentoProcesso.handleAcompanhamentoChange}" />
                    </p:pickList>
                </p:fieldset>
                
                <p:commandButton value="Gerar Novos Dados do Relatório" update=":frmAcompanhamentoProcesso:panel :frmAcompanhamentoProcesso:multiAcompanhamentos :frmAcompanhamentoProcesso:messages" 
                                 onstart="PF('statusDialog').show();" onsuccess="PF('statusDialog').hide();" ajax="true" process="@all"
                                 title="Escolha o Agrupamento antes de Gerar o Relatório" actionListener="#{viewAcompanhamentoProcesso.geraRelatorio}" />

                <p:commandButton value="Imprimir Relatório" update=":frmAcompanhamentoProcesso:panel :frmAcompanhamentoProcesso:multiAcompanhamentos :frmAcompanhamentoProcesso:messages"
                                 ajax="false" action="#{relatorioBean.geraRelatorio(2)}" />

                <!-- TELA ESPERA CARREGAMENTO -->
                <p:dialog widgetVar="statusDialog" header="Aguarde ... Atualizando os Dados do Relatório ..." draggable="false" closable="false">
                    <p:graphicImage value="/design/ajaxloadingbar.gif" />
                </p:dialog>
            </p:panel>
            <h:inputHidden id="tipRel" value="acompanhamento" />
        </h:form>
    </ui:define>
</ui:composition>